package cn.yedong.system.mapper;

import cn.yedong.system.domain.Role;
import cn.yedong.basic.mapper.BaseMapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * <p>
 *  Mapper 接口
 * </p>
 *
 * @author yedong
 * @since 2023-02-13
 */
public interface RoleMapper extends BaseMapper<Role> {
    //添加角色时添加t_role_menu【角色-菜单】中间表
    void addRoleMenus(@Param("id") Long id, @Param("menus")List<Long> menus);
    //添加角色时添加t_role_permission【角色-权限】中间表
    void addRolePermissions(@Param("id")Long id,@Param("permissions") List<Long> permissions);
    //根据角色id删除t_role_menu【角色-菜单】中间表
    void delMenusByRoleId(Long id);
    //根据角色id删除t_role_permission表【t_role_permission】中间表
    void delPermissionsByRoleId(Long id);
    //根据角色id删除t_employee_role【员工-角色】中间表
    void delEmployeeRoleByRoleId(Long id);
    //根据角色id查询权限id集合【直接通过中间表t_role_permission表操作】
    List<Long> findPermissionIdsByRoleId(Long id);
}
